#!/system/bin/sh

#Warp OEM Power Nap script v2
#2013 by Mercury0x000d

scriptMinSpeed=122880
scriptMaxSpeed=245760

#core script begins here

(
while [ 1 ]
do 
 screenOff=$(cat /sys/power/wait_for_fb_sleep) 
 if [ $screenOff = "sleeping" ]; then
  #device entered sleep state; make note of curent frequencies and enter wait for wake loop
  userMinSpeed=$(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq)
  userMaxSpeed=$(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq)
  echo $scriptMinSpeed > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
  echo $scriptMaxSpeed > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
  while [ 1 ]
  do
   screenOn=$(cat /sys/power/wait_for_fb_wake)
   if [ $screenOn = "awake" ]; then
    #device entered wake state; push old frequencies and loop again
	echo $userMinSpeed > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
    echo $userMaxSpeed > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
   fi
   break
  done  
 fi
done &)
